package org.jeecg.modules.api.wlhy.company;

import io.swagger.annotations.Api;
import io.swagger.annotations.ApiOperation;
import lombok.extern.slf4j.Slf4j;
import org.jeecg.common.api.vo.Result;
import org.jeecg.common.aspect.annotation.AutoLog;
import org.jeecg.modules.wlhy.company.entity.HyCompanyConfig;
import org.jeecg.modules.wlhy.company.service.IHyCompanyConfigService;
import org.jeecg.modules.wlhy.order.entity.HyOrder;
import org.jeecg.modules.wlhy.order.service.IHyOrderService;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.web.bind.annotation.GetMapping;
import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.web.bind.annotation.RequestParam;
import org.springframework.web.bind.annotation.RestController;

/**
 * @Description: 请求分公司配置信息
 * @author: luruirui
 * @date: 2021年07月01日 15:01
 */
@Api(tags="APP分公司配置")
@RestController
@RequestMapping("/api/wlhy/companyconfig")
@Slf4j
public class ApiCompanyConfigController {
    @Autowired
    private IHyCompanyConfigService hyCompanyConfigService;

//    @Autowired
//    private IHyOrderService hyOrderService;

//    @AutoLog(value = "APP分公司配置-根据货源id请求分公司配置实体")
//    @ApiOperation(value="APP分公司配置-根据货源id请求分公司配置实体", notes="APP分公司配置-根据货源id请求分公司配置实体")
//    @GetMapping(value = "/getByOrderId")
//    public Result<?> getCompanyConfigByOrderId(@RequestParam(name="orderId",required=true) String ordreId){
//        log.info("[根据货源id请求分公司配置实体]ordreId = {}", ordreId);
//        HyOrder order = hyOrderService.getById(ordreId);
//        if(order == null){
//            return Result.error("未获取到货源信息！【" + ordreId + "】");
//        }
//        //从货源中拿到分公司id
//        String companyId = order.getCompanyId();
//        HyCompanyConfig companyConfig = hyCompanyConfigService.getByCompanyId(companyId);
//        if(companyConfig == null){
//            //获取不到配置时自动生成1条
//            companyConfig = new HyCompanyConfig();
//            companyConfig.setCompanyId(companyId);
//            companyConfig.setScenePhoto(1);
//            hyCompanyConfigService.save(companyConfig);
//        }
//        return Result.OK(companyConfig);
//    }

//    @AutoLog(value = "APP分公司配置-根据货源id请求分公司配置实体")
    @ApiOperation(value="APP分公司配置-根据id请求分公司配置实体", notes="APP分公司配置-根据id请求分公司配置实体")
    @GetMapping(value = "/getById")
    public Result<?> getCompanyConfigById(@RequestParam(name="companyId",required=true) String companyId){

        HyCompanyConfig companyConfig = hyCompanyConfigService.getByCompanyId(companyId);
        if(companyConfig == null){
            //获取不到配置时自动生成1条
            companyConfig = new HyCompanyConfig();
            companyConfig.setCompanyId(companyId);
            companyConfig.setScenePhoto(0);
            hyCompanyConfigService.save(companyConfig);
        }
        return Result.OK(companyConfig);
    }

}
